The availability of shared storage systems for electronic documents has increased the ability of computer end users to share and to collaborate in the creation of a variety of electronic documents. End users can cause electronic documents to be stored in shared storage systems on a computer network, such as the internet. End users can instruct such a shared storage system to allow electronic documents to be shared with other end users of the shared storage system. A shared storage system generally has an access control component in a file system that tracks, for each electronic document, the access rights that different users have for the electronic document.
After an electronic document has been shared among two or more end users, the shared storage system manages access to the shared electronic document to ensure consistency of the electronic document, especially in the case of collaborative editing of, i.e., collaborative modifications to, the electronic document. A collaboration system manages collaborative modification by tracking which end users currently are using end user applications on client computers to access the same electronic document. The collaboration system typically is implemented as one or more computer programs executing on the server computer, and, in some implementations, may have components executing on the client computers.
In some cases, electronic documents are shared through electronic mail or other communications channels instead of through shared storage. In such circumstances, the end users generally are responsible for tracking versions and maintaining consistency of the electronic document.
End user applications generally allow users to modify electronic documents. For collaborative editing, a typical feature in an end user application is the ability for a user to attach a comment to the electronic document. In general, the comment is either associated with a specific location within the document or within a general comment section of the electronic document.
Generally speaking, users also communicate about their work through communication channels outside of the context of an electronic document edited in an end user application. For example, users may send messages, such as chat messages, instant messages, text messages, electronic messages and the like, to each other about an electronic document through a communication application. Some end user applications allow an end user to initiate communication with other end users using such communication applications.
The distribution of comments and messages about electronic documents within the electronic document as well as in several communication channels using different end user applications and communication applications increases the complexity of managing the collaborative efforts of these users. Further, switching from an end user application to a communication application is unproductive for users because it involves stopping a task with one application and changing context to working with another application, which can disrupt the user's train of thought. Further, with some devices, only one application can be visible at a time, which can make it difficult for a user to remember what the message is about after switching from the end user application with the electronic document to the communication application.